package net.sansi.v3correctserver.util;

import org.springframework.context.MessageSource;
import org.springframework.context.i18n.LocaleContextHolder;
import org.springframework.stereotype.Component;

/**
 * 国际化工具类
 * <p>
 * Created by Fang
 * create time : 2023/12/22
 * IDE : IntelliJ IDEA
 */

@Component
public class I18nUtil {
    public static MessageSource messageSource;

    public I18nUtil(MessageSource messageSource) {
        // spring的bean注入
        I18nUtil.messageSource = messageSource;
    }

    /**
     * 获取国际化翻译值
     *
     * @param msgKey 键
     * @return 值
     */
    public static String get(String msgKey) {
        return messageSource.getMessage(msgKey, null, LocaleContextHolder.getLocale());
    }

    /**
     * 获取国际化翻译值（包括占位符）
     *
     * @param msgKey 键
     * @param args   占位符参数
     * @return 值
     */
    public static String get(String msgKey, Object... args) {
        return messageSource.getMessage(msgKey, args, LocaleContextHolder.getLocale());
    }
}